package com.zretc.support.service;

import com.zretc.support.entity.Topicmult;
import com.zretc.support.entity.Topicsingle;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.redis.listener.Topic;

import java.util.List;

public interface TopicmultService {
    /**
     * 获取所有选择题
     * @return
     */
    List<Topicmult> getAllTopic();

    /**
     * 添加选择题
     * @param topicmult
     * @return
     */
    Topicmult addTopicmult(Topicmult topicmult);

    /**
     * 根据题号获取选择题
     * @param topicId
     * @return
     */
    Topicmult getTopicmultById(String topicId);

    /**
     * 删除选择题
     * @param topicmultId
     * @return
     */
    int delTopicmult(String topicmultId);

    /**
     * 修改选择题
     * @param topicmult
     * @return
     */
    int updTopicmult(Topicmult topicmult);

    /**
     * 查询选择题并分页
     * @param keyword
     * @param level
     * @param type
     * @param page
     * @param size
     * @return
     */
    Page<Topicmult> getTopicmultByPage(String keyword,String level,String type,int page,int size);

    /**
     * 查询选择题根据课程 -- 分页
     * @param courseId
     * @param level
     * @param type
     * @param page
     * @param size
     * @return
     */
    Page<Topicmult> getTopicmultByCourseIdWithPage(List<Long> courseId, String level, String type, int page, int size);

    /**
     * 随机获取选择题
     * @param course
     * @param num
     * @param type
     * @return
     */
    Page<Topicmult> getTopicmultByRand(int course,int num,int type);

}
